//对象的创建与使用
//class Student{
//    String name;//声明姓名属性
//    void read(){
//        System.out.println("大家好，我是"+name);
//    }
//}
//class Test{
//    public static void main(String[] args){
//        //创建Student对象
//        //类名 对象名称 = new 类名（）；
//        Student stu1 = new Student();
//        Student stu2 = new Student();
//        //使用对象访问类中的某个属性或方法
//        //对象名称.属性名
//        //对象名称.方法名
//        stu1.name = "小明";
//        stu1.read();
//        stu2.name = "小华";
//        stu2.read();
//    }
//}


//对象的引用传递
//class Student{
//    String name;
//    int age;
//    void read(){
//        System.out.println("大家好，我是"+name+",年龄"+age);
//    }
//}
//class Test{
//    public static void main(String[] args){
//        Student stu1 = new Student();
//        Student stu2 = null;
//        stu2 = stu1;  //stu1给sut2分配空间使用权
//        stu1.name = "小明";
//        stu1.age = 20;
//        stu2.age = 50;
//        stu1.read();
//        stu2.read();
//    }
//}

//实现类的封装
//class Student{
//    private String name;//将属性name声明为私有变量
//    private int age;//将属性age声明为私有变量
//    //定义方法
//    public String getName(){  //获取
//        return name;
//    }
//    public void setName(String name){  //设置
//        this.name = name;
//    }
//    public int getAge(){
//        return age;
//    }
//    public void setAge(int age){
//        if(age<=0){
//            System.out.println("您输入的年龄有误！");
//        }
//        else {
//            this.age = age;
//        }
//    }
//    public void read(){
//        System.out.println("大家好，我是"+name+",年龄"+age);
//    }
//}
//
//public class Test {
//    public static void main(String[] args){
//        Student stu = new Student();   //创建Student对象
//        stu.setName("张三");
//        stu.setAge(-18);
//        stu.read();
//    }
//}


//定义无参的构造方法
class Student{
    public Student(){
        System.out.println("调用了无参构造方法");
    }
}
public class Test {
    public static void main(String[] args){
        System.out.println("声明对象...");
        Student stu = null;
        System.out.println("实例化对象...");
        stu = new Student();
    }
}


//构造方法的重载
//public Student{
//    private String name;
//    private int age;
//    public Student(){ }
//    public Student(String n){
//        name = n;
//    }
//    public Student(String n,int a){
//        name = n;
//        age = a;
//    }
//    public void read(){
//        System.out.println("我是："+name+"，年龄："+age);
//    }
//}
//public class Test {
//    public static void main(String[] args){
//        Student stu1 = new Student("张三");
//        Student stu2 = new Student("张三",18);
//        stu1.read();
//        stu2.read();
//    }
//
//}
